
DEF_CMD(push ,     1  ,   { Stack_Push( &((*CPU).Stack_CPU) , GET_ARG); }    , 1)

DEF_CMD(pushar ,   2  ,   {CPU_PUSHAR_REG(CPU , &step);}                     , 2)

DEF_CMD(sum_m ,    3  ,   {Binary_ops(CPU, &sum , &step);}                   , 0)

DEF_CMD(mult ,     4  ,   {Binary_ops (CPU , &multiplication_f , &step);}    , 0)

DEF_CMD(diff ,     5  ,   {Binary_ops (CPU , &diff_f , &step);}              , 0)

DEF_CMD(sin_m ,    6  ,   {Unary_ops (CPU , &sin , &step); }                 , 0)

DEF_CMD(cos_m ,    7  ,   {Unary_ops (CPU , &cos , &step);}                  , 0)

DEF_CMD(divide ,   8  ,   {Binary_ops (CPU , &divide_f , &step);}            , 0)

DEF_CMD(sqr ,      9  ,   {Unary_ops ( CPU , &sqrt , &step);}                , 0)

DEF_CMD(pop ,      10 ,   {CPU_pop_reg(CPU , &step); }                       , 2)

DEF_CMD(jmp ,      11 ,   {CPU_JUMP_PARAM(CPU , &step , JUMP);}              , 3)

DEF_CMD(ja ,       12 ,   {CPU_JUMP_PARAM(CPU , &step , JA);}                , 3)

DEF_CMD(je,        13 ,   {CPU_JUMP_PARAM(CPU, &step , JE);}                 , 3)

DEF_CMD(jb ,       14 ,   {CPU_JUMP_PARAM(CPU , &step , JB);}                , 3)

DEF_CMD(jbe ,      15 ,   {CPU_JUMP_PARAM(CPU , &step , JBE);}               , 3)

DEF_CMD(jne ,      16 ,   {CPU_JUMP_PARAM(CPU , &step , JNE);}               , 3)

DEF_CMD(jae ,      17  ,  {CPU_JUMP_PARAM(CPU , &step , JAE);}               , 3)

DEF_CMD(out ,      18 ,   {CPU_OUT(CPU , &step);}                            , 2)

DEF_CMD(call,      19 ,   {CPU_call(CPU , &step);}                           , 3)

DEF_CMD(ret,       20 ,   {CPU_RET(CPU , &step);}                            , 0)

DEF_CMD(in   ,     22 ,   {REGISTER_INPUT(CPU , &step);}                     , 2)

DEF_CMD(outlast ,  23 ,   {CPU_OUT_LAST_VALUE(CPU , &step);}                 , 0)

DEF_CMD(EXIT ,     21 ,                                                      , 0)



